package io;

import java.io.*;

/**
 * java将流分为两类:
 * 节点流和处理流
 * 节点流也称为低级流,是真实连接程序与另一端的管道.读写一定是建立在节点流的基础上进行的
 * 比如,文件流就是节点流
 *
 * 处理流也称为高级流,是不能独立存在的,必须连接在其他流上,目的是当数据流经过它时对数据进行某些加工处理,
 * 简化我们的同等操作
 *
 * 实际开发中我们经常会串联一组高级流并最终连接到低级流上,使得读写数据以流水线式的加工处理来完成
 * 这个操作称为"流的连接"!
 *
 * 高级流之缓冲流
 * java.io.BufferedInputStream和BufferedOutputStream
 * 缓冲流是一对高级流
 * 作用是:加快读写效率
 */
public class BOSDemo {
    public static void main(String[] args) throws IOException {
        FileInputStream fis=new FileInputStream("杜俊飞介绍.pptx");
        FileOutputStream fos=new FileOutputStream("杜俊飞介绍121.pptx");
        BufferedOutputStream bos= new BufferedOutputStream(fos);
        BufferedInputStream bis=new BufferedInputStream(fis);

        int d;
        long start=System.currentTimeMillis();
        while ((d=bis.read())!=-1){
            bos.write(d);
        }
        long end=System.currentTimeMillis();
        System.out.println("复制完毕,耗时"+(end-start)+"毫秒");
        bis.close();
        bos.close();






















    }
}
